home *** CD-ROM | disk | FTP | other *** search
/ Software 2000 / Software 2000 Volume 1 (Disc 1 of 2).iso / aga / aga006.dms / in.adf / VZ.Doc / VZ.Doc
Encoding:
Text File  |  1988-08-11  |  39.0 KB  |  807 lines

  1.  
  2.                           | 
  3.          ·` __/   _     --+--
  4.         /| / /`\ /(____   |  .   . __|__   _    \/_________. - - ----- --- --
  5.   ·/\  / | \/__/ \  __ \ ·   I\_/I   /\____)\   /\   _   °/  ---- -- --- - -
  6.   |°|  |!| /___` |\ II  \|\_/|·  |  /°  __  /     \  /   /  - c0nt®0[/aTz -
  7.   | |  | I | //| |  __ /`|   |i /i  \_   \_/       \/·  //\ ------    -
  8.   | I\/  / |//·|/   || \ |   I:  I /\ \  \\       \//  /~  \  - --      
  9.   \    `// |// |    ||  \I   ^  /|/  \~\  \\  _|_ //        \
  10.    \_.\/// |/_/|___°I|_°/ \____/_|\._______/   | /________/°/ Ve®$i0n 3.oo
  11.      \/       \/                                     \
  12.                                                       \
  13.  
  14.  
  15.  
  16.                       SOME NOTES CONCERNING LAW AND ORDER
  17.                       -----------------------------------
  18.  
  19.     1. Copyright
  20.     ------------
  21.     The entire VirusZ package is written and copyright © 1991,1992,1993  by
  22.     Georg Hörmann  with  exception  of  the  reqtools.libraries  which  are
  23.     written and copyright © by Nico François who gave the permission to use
  24.     the libraries  and installation  scripts  in any  freely  distributable
  25.     software package.
  26.  
  27.     2. Disclaimer
  28.     -------------
  29.     The executionable and non-executionable parts of this software  package
  30.     may NOT  be altered by any means (this includes editing, reprogramming,
  31.     crunching, and resourceing), except archiving. The author is in NO  way
  32.     liable for any changes made to any part of the package, or consequences
  33.     thereof as he is in NO way liable for damages or loss of data  directly
  34.     or indirectly caused by this software.
  35.  
  36.     3. Distribution
  37.     ---------------
  38.     Neither fees may  be charged nor  profits may be  made by  distributing
  39.     this piece of software. Only a  nominal fee for cost of magnetic  media
  40.     may be acceptable, the amount of US $6 shouldn't be exceeded for a disk
  41.     containing VirusZ. Outside  a single machine  environment, you are  NOT
  42.     allowed to reproduce only  some parts of the  package, but you have  to
  43.     copy it completely. See this list of contents for verification:
  44.  
  45.              VirusZ (dir)
  46.                Docs (dir)
  47.                  Brain.doc
  48.                  Brain.doc.info
  49.                  VirusZ.doc
  50.                  VirusZ.doc.info
  51.                  VirusZ.history
  52.                  VirusZ.history.info
  53.                  VZBE.doc
  54.                  VZBE.doc.info
  55.                Libs (dir)
  56.                  decrunch.library
  57.                  reqtools.library.13
  58.                  reqtools.library.20
  59.                S (dir)
  60.                  VirusZ.brain
  61.                Tools (dir)
  62.                  DLD
  63.                  DLD.doc
  64.                Docs.info
  65.                Install
  66.                Install.info
  67.                Install.script
  68.                VirusZ
  69.                VirusZ.info
  70.                VZBE
  71.                VZBE.info
  72.              VirusZ.info
  73.  
  74.     Note that the original package was released as 'VirusZ300.lha' archive.
  75.     If any parts were already missing when you received this package,  look
  76.     out for another source to get your software in future.
  77.  
  78.     4. Shareware
  79.     ------------
  80.     VirusZ is no longer Freeware, but  Shareware. This means you are  still
  81.     allowed to copy the software freely, but  you have to pay a fee to  the
  82.     author if you use VirusZ regularly. Not paying your fee is both immoral
  83.     and illegal. If you  already have registered  for any former  releases,
  84.     paying the fee  again is optional.  Suggested donation is  DM 10 or  an
  85.     equivalent amount  in any  other currency.  Anything else  will not  be
  86.     accepted. By now,  I had more  expense than profit  by sending all  you
  87.     folks your disks back etc.  If you want me  to continue my work,  don't
  88.     try to cheat me.
  89.     Submissions with new material  (viruses/crunchers) are welcome. If  you
  90.     want your disks back, either enclose enough money for postage or German
  91.     stamps. If you send me useful stuff, you will additionally receive  the
  92.     latest update  of VirusZ  on your  disk. Contact  me at  the  following
  93.     address:                                                               
  94.  
  95.                      Georg Hörmann
  96.                      Am Lahnewiesgraben 19
  97.                      W-8100 Garmisch-Partenkirchen
  98.                      Germany
  99.  
  100.  
  101.                   !!! IMPORTANT NOTE FOR REGISTERED USERS !!!
  102.                   -------------------------------------------
  103.  
  104.     I will no longer offer the  update service for registered users. I  had
  105.     nothing but trouble in the past with sending dozens of disks around the
  106.     world. Some  versions of  VirusZ always  showed some  bugs right  after
  107.     releasing them. If I release the  latest versions on BBS boards and  PD
  108.     disks only, the risk of losing a lot of money isn't that high as it  is
  109.     if I have to send all bugged updates twice. This becomes too expensive.
  110.     I know  that it's  not your  fault when  I make  mistakes, but  it's  a
  111.     difference between  updating an  text editor  and a  virus killer.  The
  112.     editor will be updated 1 or 2 times a year, but new versions of a virus
  113.     killer have to be released at least every 4th week. Errare humanum est.
  114.  
  115.  
  116.                                  INTRODUCTION
  117.                                  ------------
  118.  
  119.     1. VirusZ Philosophy
  120.     --------------------
  121.     VirusZ is another try to  make the perfect viruskiller. Although  there
  122.     are already hundreds of killers, none had to offer the, in my  opinion,
  123.     most important features. These  are to be short,  fast and not to  keep
  124.     the user from working by opening a big screen with hundreds of  gadgets
  125.     or locking the drives. If you like that type of killer, forget VirusZ.
  126.  
  127.     2. Why Use VirusZ?
  128.     ------------------
  129.     VirusZ has been  tested on  Kickstart 1.2/1.3, OS  2.0 and  OS 3.0  and
  130.     worked just fine.  It offers several  OS 2.0 features  even under  Kick
  131.     1.2/1.3 like gadget activation via  keyboard. All windows use the  full
  132.     screen size, have a built-in Topaz 8 font to prevent any trouble, bring
  133.     themselves to the front when started and set up a wait pointer for  the
  134.     other windows. Windows always support the screen font (up to size 124!)
  135.     in the menu/title bar. VirusZ recognizes over 200 bootblock viruses and
  136.     the filechecker not  only detects  over 95  file viruses,  but it  also
  137.     offers you the unbelieveable feature of decrunching files. The boot lab
  138.     offers all  important bootblock  operations on  one screen.  The  whole
  139.     software is written 100% in assembly language for lightning speed.  The
  140.     memory checker  removes all  known viruses  from memory  without  'Guru
  141.     Meditation' and checks memory for viruses regularly. VirusZ has easy to
  142.     use intuitionized  menus  including  keycuts  for  both  beginners  and
  143.     experienced users. It performs a self-test on every startup to  prevent
  144.     link virus infection. VirusZ works in the background and uses less than
  145.     0.5% of your processing time (use Xoper to verify). Last but not least,
  146.     VirusZ is regularly  updated and  hence offers  you perfect  protection
  147.     against the latest viruses. Starting with 3.00, you have the ability to
  148.     learn your own bootblocks via the VirusZ Brain Editor VZBE.
  149.  
  150.  
  151.                                 GETTING STARTED
  152.                                 ---------------
  153.  
  154.     1. For The Very First Time
  155.     --------------------------
  156.     VirusZ requires  the 'reqtools.library'  in  order to  work  correctly.
  157.     Included in this  package are two  versions of the  'reqtools.library',
  158.     one for Kick 1.3 and one for OS 2.0. Chose the one that fits with  your
  159.     OS, copy it  to the 'libs:'  drawer of  your boot disk  and remove  the
  160.     suffix (simply  rename it).  If you  don't  want to  do the  copy  work
  161.     yourself, click on the 'Install'  icon from WorkBench. This will  start
  162.     an installation script. If you want to use the decrunch feature, you'll
  163.     additionally need the 'decrunch.library'.
  164.  
  165.     2. If You Already Have Used VirusZ 
  166.     ----------------------------------
  167.     Make sure  that you  copy the  latest library  versions to  your  libs:
  168.     drawer. Also verify the  settings in the prefs  menu if you have  saved
  169.     them with an old VirusZ version because versions higher than 3.00 use a
  170.     new preferences file format. Copy the brainfile to your s: directory or
  171.     change the prefs to the correct path.
  172.  
  173.     3. The First Step To Glory
  174.     --------------------------
  175.     Starting VirusZ is nothing more than  typing its name to any  CLI/Shell
  176.     or double-clicking its icon from  WorkBench. There are several  message
  177.     alerts included in the startup module.  If anyone of these flashes  up,
  178.     there is something wrong. These alerts are self explaining so we skip a
  179.     detailed  description.  If  the  'VirusZ's  hunk  structure  has   been
  180.     modified!' alert comes up, your copy  of VirusZ might be infected by  a
  181.     virus or might  have been crunched  with a bad  cruncher (in fact  most
  182.     crunchers are bad).
  183.  
  184.     4. How To Use ReqTools Requesters
  185.     ---------------------------------
  186.     VirusZ uses three types of  ReqTools requesters: Requests asking for  a
  187.     decision, Information Requesters informing you about something and File
  188.     Requesters to select files/drawers.  You can satisfy  them not only  by
  189.     clicking their gadgets, but also via shortcuts. These are:
  190.        Positive Response: <Y>, <RETURN>, <LAMIGA><V>, underscored character
  191.        Negative Response: <N>, <ESC>, <LAMIGA><B>, underscored character
  192.     The positive gadget is the leftmost always printed in bold, whereas the
  193.     negative is the rightmost.
  194.  
  195.  
  196.                               AUTOMATIC FEATURES
  197.                               ------------------
  198.  
  199.     1. General Information
  200.     ----------------------
  201.     VirusZ does  lots of  things in  the background  which you  will  never
  202.     notice until  there  is something  wrong.  All the  automatic  features
  203.     described below will only work if no other VirusZ windows are currently
  204.     open. Read the preferences chapter below  if you want to customize  any
  205.     of the following functions.
  206.  
  207.     2. The Bootblock Check
  208.     ----------------------
  209.     Every  disk  inserted  will  be  checked  for  bootblock  viruses   and
  210.     non-standard bootcode. This  ensures that your  bootblocks stay  clean.
  211.     Every known virus will cause a request  asking you what to do. You  can
  212.     either go to the  bootblock lab or ignore  it. The last possibility  is
  213.     not recommended. If your disk contains anything else than a virus or  a
  214.     standard bootblock, it will be  checked for bootblocks contained in  an
  215.     external bootblock brainfile.  If the bootblock  cannot be  identified,
  216.     VirusZ first  compares its  checksum. If  this is  not correct,  VirusZ
  217.     simply ignores it because  it wouldn't be executed  anyway. But if  all
  218.     conditions are met,  the bootblock  will be reported  as unknown.  This
  219.     might happen  with most  bootload games  or demos,  so do  NOT  install
  220.     anything you don't know.  You might trash the  program that depends  on
  221.     this boot.  But  if you  are  sure that  it's  a new  virus,  save  the
  222.     bootblock (you can use VirusZ for this) install the original  bootblock
  223.     and send me the copy for inclusion in VirusZ.
  224.  
  225.     3. The Virus & Vector Check in Memory
  226.     -------------------------------------
  227.     This is the real memory check looking for known viruses. It's  executed
  228.     once on startup,  and whenever  VirusZ finds a  virus, you  will get  a
  229.     request telling  you  which  virus was  removed.  VirusZ  removes  them
  230.     automatically. Viruses will not only  be patched or disabled, but  they
  231.     will be  removed from  memory completely.
  232.     After looking  around for  known  viruses, the  reset vectors  will  be
  233.     checked. If any of them are set,  you will get directly to the  'VirusZ
  234.     Vector Check'. See a detailed description  of this in the vector  check
  235.     chapter below.
  236.     In addition  to the  startup memory  check, VirusZ  repeats the  memory
  237.     check regularly. The time passed between  two checks can be changed  by
  238.     the user, default is  10 seconds. This  is the safest  way to find  and
  239.     remove file- and  linkviruses in  memory. These viruses  can appear  in
  240.     memory any  time  an infected  file  is executed.  So  whenever  VirusZ
  241.     reports a virus in memory, check the disks you are working with at  the
  242.     moment for infection. Note that the time passed between two checks will
  243.     be slightly shorter on NTSC machines  since VirusZ is PAL oriented  and
  244.     works with 50Hz.
  245.     NOTE: VirusZ will no longer delete all Resident Modules when it removes
  246.           a virus from memory. You still can find your recoverable RAM-Disk
  247.           after resetting as if nothing has happened. The only reason for a
  248.           lost RAM-Disk can be the virus that has been removed.
  249.  
  250.  
  251.                               USING VIRUSZ'S MENU
  252.                               -------------------
  253.  
  254.     To use all other features offered by VirusZ, you have to use menu items
  255.     to call the corresponding functions. These can only be used if VirusZ's
  256.     window is active. Note that the background features won't work as  long
  257.     as any other windows are opened  (which is the case with all  functions
  258.     called via menu).
  259.  
  260.     1. Check Files
  261.     --------------
  262.     See a description of the file check in one of the next chapters.
  263.  
  264.     2. Check Sectors
  265.     ----------------
  266.     The sector checker makes it possible  to scan a whole device for  virus
  267.     corruption. First you'll get a small selector for the device to  check.
  268.     Ok and Cancel should be clear, Refresh tells VirusZ to free its  device
  269.     list made on startup and rebuild a new one. This is needed if you mount
  270.     a device when  VirusZ is already  running. The selector  gadget in  the
  271.     middle works exactly like  a standard OS 2.0  gadget, but is  simulated
  272.     with Kick  1.3 means.  If you  click on  it, the  next device  will  be
  273.     selected, if you press <SHIFT>  while clicking, the previous device  is
  274.     selected. You certainly can also use the shortcuts by pressing the keys
  275.     that correspond with the underlined characters. If you made your choice
  276.     and clicked Ok, the main display  appears. It is divided in two  parts.
  277.     The small box at the top is  a progress indicator which will be  filled
  278.     from the  left to  the  right while  checking,  thus telling  you  what
  279.     percentage of the device  is already checked. The  big box is the  text
  280.     display which contains all information  about the current status.  Here
  281.     you'll get all messages  if VirusZ finds anything  that's not ok.  Note
  282.     that the sector checker  will repair damages  without asking, i.e.  you
  283.     have to unprotect your disks before checking. If you don't want to have
  284.     any corrections, keep the  disk write protected.  The damage caused  by
  285.     the following viruses  will be recognized:  Saddam (5 versions),  Lamer
  286.     Exterminator (3  versions), Warsaw  Avenger, Fast  Eddie, Little  Sven,
  287.     Glasnost and Sachsen  3. The damage  caused by Saddam  and Little  Sven
  288.     will be repaired  (blocks will be  decrypted), the others  can only  be
  289.     detected. You can  pause and exit  checking at any  time by pressing  a
  290.     mouse button.
  291.     NOTE: With OS  2.0, the  recoverable RAM-Disk is  not initialized  when
  292.     mounted, but when you access  it the first time  via DOS. If you  check
  293.     the RAD: before accessing it, VirusZ will report a Saddam infection  on
  294.     sector 880. This happens because  the rootblock is not initialized yet.
  295.     It isn't really an infection.
  296.  
  297.     3. Check Vectors
  298.     ----------------
  299.     See a description of the vector check in one of the next chapters.
  300.  
  301.     4. Bootblock Lab
  302.     ----------------
  303.     See a description of the bootblock lab in one of the next chapters.
  304.  
  305.     5. Preferences
  306.     --------------
  307.     See a description of the preferences in one of the next chapters.
  308.  
  309.     6. Load Brain
  310.     -------------
  311.     This function tries to load the brainfile specified in the preferences.
  312.     It will then be used to detect additional bootblocks.
  313.  
  314.     7. Clear Brain
  315.     --------------
  316.     Use this if you need the memory used by the brainfile. This function is
  317.     only available if there is already a brainfile in memory.
  318.  
  319.     8. About
  320.     --------
  321.     This displays some information about VirusZ. Simply click somewhere  in
  322.     the window to get rid of it.
  323.  
  324.     9. Quit VirusZ
  325.     --------------
  326.     Think twice and you'll figure out the function of this.
  327.  
  328.  
  329.                                   FILE CHECK
  330.                                   ----------
  331.  
  332.     1. Introduction
  333.     ---------------
  334.     In the early days  of the Amiga viruses,  nobody thought about file  or
  335.     even link viruses. A good virus killer had to display the bootblock and
  336.     check some vectors. But nowadays, the greatest danger doesn't come from
  337.     the bootblock,  but from  files.  Therefore this  file check  has  been
  338.     created to check  files for virus  infection. See a  list of all  known
  339.     viruses in the file 'Brain.doc'. This  file checker is quite unique  as
  340.     it offers some possibilities which  others lack. First it can  decrunch
  341.     files for checking, second it can remove all virus links from a file in
  342.     one step  where others  only remove  one link  after the  other.  These
  343.     features are made possible thanks to a great file buffering method  and
  344.     my own decrunch.library. If you have  to chose a checker, use mine  for
  345.     perfect checking:-)
  346.  
  347.     2. How To Use It
  348.     ----------------
  349.     First you have to select the path where files should be checked in  the
  350.     file requester. Therefore  the complete  path must be  included in  the
  351.     string gadget of the  requester. Click 'Ok' and  we start checking  all
  352.     files in the selected directory and its subdirs. You can skip  checking
  353.     subdirs by enabling the 'Skip Subdirectories' item in the prefs window.
  354.     The main window will  appear which is divided  in two parts. The  small
  355.     box at the top contains  the current path we  are checking in. The  big
  356.     box is the text window where all filenames will be listed with a  short
  357.     description.                                                           
  358.     VirusZ recognizes several types of  data files (such as archives  etc.)
  359.     and will print their names if  possible. Crunched files will appear  to
  360.     be reported as executables if  you haven't enabled the 'Check  Crunched
  361.     Files' item in the prefs window. Otherwise, they will be reported  with
  362.     the packer name  printed in bold.  Viruses are reported  by name  (blue
  363.     background, white characters) and will  cause a requester that  informs
  364.     you about the type of virus. You  may or may not remove the virus  from
  365.     the infected file.
  366.     You can abort/pause checking at any time by pressing any mouse button.
  367.  
  368.     3. Important Notes
  369.     ------------------
  370.     The linkvirus removal code is absolutely reliable as long  as the  file
  371.     isn't damaged  in  any way.  If  the  hunk structure  is  corrupted  or
  372.     anything else disables  removing, VirusZ  will say  'Can't remove'  and
  373.     then skip the file.
  374.     You should  note  that VirusZ  doesn't  use the  decrunch  feature  for
  375.     absolute crunchers, i.e.  for crunchers  that decrunch  their files  to
  376.     absolute addresses,  because  most  viruses  wouldn't  survive  such  a
  377.     crunching process anyway.
  378.     If you get a  message 'Can't load', this  file is either unreadable  or
  379.     you don't have enough memory.
  380.     VirusZ handles  the protection  bits  automatically, i.e.  saves  their
  381.     original contents, then  makes the file  readable/writable and  restore
  382.     them to  their originals  after checking.  This is  useful because  you
  383.     don't have to mess around with the Protect command in your Shell.
  384.     Whenever there comes  up a  system request "disk  is write  protected",
  385.     VirusZ tried  to  change  the  protection  bits.  This  access  is  not
  386.     dangerous, so it  would be best  if you make  your disks write  enabled
  387.     before checking.
  388.  
  389.     4. Additional Hints
  390.     -------------------
  391.     It may happen that a file is  first infected and then crunched. If  you
  392.     want to save the  cleaned file without having  it decrunched, check  it
  393.     again with decrunching disabled.
  394.  
  395.  
  396.                                  VECTOR CHECK
  397.                                  ------------
  398.  
  399.     1. Introduction
  400.     ---------------
  401.     Mostly all viruses work in the same manner. Either they make themselves
  402.     resident and/or  corrupt some  libraries or  devices with  their  code.
  403.     Therefore the vector check was designed to help you finding new viruses
  404.     that can't be recognized  directly by VirusZ yet.
  405.     Most of the  vectors and entrypoints  that will be  displayed are  only
  406.     interesting for programmers, so  I will try  to avoid any  explanations
  407.     that confuse the average user.
  408.  
  409.     2. Usage
  410.     --------
  411.     The vector check window is nothing more than one big display. It  stops
  412.     after every page and waits for  a mouse button. The left button  always
  413.     causes VirusZ  to continue  scrolling,  if the  last page  was  already
  414.     reached, the vector check  will be terminated. The  right button has  a
  415.     double function.  While scrolling,  you can  stop displaying  any  more
  416.     pages. Then, you are able to use the menu items attached to the  vector
  417.     check window.
  418.  
  419.     3. What Can I See From The Displayed Information?
  420.     -------------------------------------------------
  421.     Well, every vector has a short comment right of it. As long as you  can
  422.     read 'Ok' there, everything is fine. Then it might happen that you read
  423.     something like 'SetPatch 38.25', this  tells you that the changes  done
  424.     to this vector are ok, because  VirusZ recognized who did them. But  if
  425.     you read 'Please  Check', be alarmed.  In fact, most  of these  unknown
  426.     changes are  nothing more  than  an utility  like  the well  known  'PP
  427.     Patchers'. If you  have such an  utility and you  know the changes  are
  428.     caused by it, please send it to me for inclusion.
  429.  
  430.     4. The Vectors Menu
  431.     -------------------
  432.     Here you have the  possibility to clear the  reset vectors or to  cause
  433.     VirusZ to  show the  vector  check display  again. This  is  especially
  434.     useful if you found  some reset vectors set  and cleared them. Now  you
  435.     can verify the  changes without  leaving and calling  the vector  check
  436.     again. If the cleared  vectors are still set  after clearing them,  you
  437.     can be 99% sure you have a  new virus in your system. Keep cool,  check
  438.     the bootblocks first and  then try to detect  any file changes. If  you
  439.     find the virus, send it to me.
  440.     Note that the vector  check menu supports  multiselect (hold the  right
  441.     button and select several items with the left button).
  442.  
  443.  
  444.                                  BOOTBLOCK LAB
  445.                                  -------------
  446.  
  447.     1. A Short Introduction
  448.     -----------------------
  449.     The bootblock lab has been created because the old bootblock  functions
  450.     of VirusZ (some will remember the 'Bootblocks' menu) were quite  boring
  451.     and everything else but comfortable to use.
  452.     NOTE: Be careful with writing to/installing your HD!!! I'm not reliable
  453.           for your faults.
  454.  
  455.     2. The Device Gadget
  456.     --------------------
  457.     You can find it in the left top  corner of the window. Click on it  and
  458.     the next device will be displayed, use SHIFT and click on it to get the
  459.     previous device. You can also use character 'd' on the keyboard instead
  460.     of clicking with the mouse.
  461.  
  462.     3. The Mode Gadget
  463.     ------------------
  464.     This is the one in the top right corner. It toggles between ascii-  and
  465.     hex-dump mode. You  may use character 'm' to change the mode too.
  466.  
  467.     4. The Status Line
  468.     ------------------
  469.     Here you can see the name of the bootblock that is currently loaded  to
  470.     the buffer. If a function call fails or anything else happens, you will
  471.     get a report in this box too.
  472.  
  473.     5. The Scroll Gadget
  474.     --------------------
  475.     It consists of one proportional gadget (I'm very proud of this, because
  476.     it was my first ever)  and two little arrows  at the bottom. It's  main
  477.     function is  to scroll  through  the bootblock  dump displayed  in  the
  478.     window. This is  only needed  when displaying hex  dump, because  ascii
  479.     dump fits in the window anyway.
  480.  
  481.     6. Quit
  482.     -------
  483.     Ahh, what was it?? Yes, you can leave the boot lab with this gadget.
  484.  
  485.     7. Load
  486.     -------
  487.     Here  you  can  load  a  bootblock  from  a  file  to  the  buffer.   A
  488.     filerequester pops up  were you  have to select  the file  you want  to
  489.     load. The bootblock will only be loaded to the buffer, not installed on
  490.     disk.                                                                  
  491.  
  492.     8. Save
  493.     -------
  494.     Counterpart of 'Load' which saves a  bootblock as a file. Nothing  more
  495.     to say,  because  it  works  exactly the  same  as  'Load'.  These  two
  496.     functions are useful for making bootblock backups of games, demos  etc.
  497.     If the buffer is empty, the gadget is disabled.
  498.  
  499.     9. Read
  500.     -------
  501.     Reads the bootblock of the currently  selected disk to the buffer.  Now
  502.     you can watch, save or print it.
  503.  
  504.     10. Write
  505.     --------
  506.     Writes the buffer contents to  the bootblock of the currently  selected
  507.     disk. Only  use  this if  you  know what  you  are actually  doing.  An
  508.     overwritten bootblock cannot be  restored in any  way. An empty  buffer
  509.     cannot be written, gadget is disabled.
  510.  
  511.     11. Print
  512.     ---------
  513.     Prints the dump of a bootblock.  Make sure that your printer is  online
  514.     or you will have  to wait for  this silly system  request for appr.  30
  515.     seconds. This  function  always  prints  the  bootblock  dump  you  can
  516.     currently see in  the window. If  nothing was loaded,  nothing will  be
  517.     printed, the gadget is disabled then.                                                               
  518.  
  519.     12. Install
  520.     -----------
  521.     Installs the bootblock selected in  the settings menu to the  currently
  522.     selected disk. Same as 'Write', you should only install disks when  you
  523.     know that they will still work afterwards.
  524.  
  525.     13. Settings Menu
  526.     -----------------
  527.     Here you can configure all important parts of the bootblock lab as  you
  528.     like. Note that this menu supports multi-select (hold right button  and
  529.     select items with the left button).
  530.  
  531.     FastFileSystem BB: If enabled, the 'Install' command will install a
  532.                        FFS bootblock (0x444f5301), otherwise you will get
  533.                        a normal OFS bootblock (0x444f5300).
  534.  
  535.     Uninstalled BB:    If enabled, VirusZ will write an uninstalled bootblock
  536.                        to the disk. This disk will no longer boot after a
  537.                        reset, but works the same as before from Shell and
  538.                        Workbench. If disabled, a standard OS 2.0 bootblock
  539.                        will be installed. This bootblock works under
  540.                        Kick 1.2/1.3 as well.
  541.  
  542.     Correct CheckSum:  Tells VirusZ to correct the checksum of a bootblock
  543.                        before writing it to disk. If you install a bootblock
  544.                        with a wrong checksum, the disk won't boot after a
  545.                        reset.
  546.  
  547.     Detect DiskChange: If set, the bootblock lab will behave like the main
  548.                        part of VirusZ, i.e. whenever you insert a disk while
  549.                        the bootblock lab is active, it will automatically
  550.                        select this drive and read the bootblock.
  551.  
  552.     Ask Before Action: If enabled, you will get an additional requester asking
  553.                        you if you really want to continue with the selected
  554.                        action. This works with 'Print', 'Write' and 'Install'
  555.                        as these functions can do some harm if wrongly used.
  556.  
  557.     Refresh Devices:   This is not part of the settings. You can refresh the
  558.                        contents of the device gadget here, e.g. after mounting
  559.                        a new drive.
  560.  
  561.                                   PREFERENCES
  562.                                   -----------
  563.  
  564.     1. The Main Idea
  565.     ----------------
  566.     I think everyone of you knows those programs that always look the  same
  567.     and do the same  and you cannot change  anything of their behaviour.  I
  568.     didn't want VirusZ to become the same, so I added this fine preferences
  569.     window.  It was designed having the User Interface Style Guide in mind.
  570.     All gadgets can be toggled via keypad too (see underlined character).
  571.  
  572.     2. Action Gadgets
  573.     -----------------
  574.     These are the three gadgets at  the bottom. 'Use' will cause VirusZ  to
  575.     use the currently  selected settings  only for  this session.  'Cancel'
  576.     ignores all changes made to the  settings. 'Save' saves them to a  file
  577.     called 'VirusZ.prefs'  in your  S:  drawer that  will  be used  on  all
  578.     following startups. Additionally to the options specified in the  prefs
  579.     window, the following will be saved too:
  580.          - the position of VirusZ's main window
  581.          - all settings of the bootblock lab
  582.  
  583.     3. Audible & Visible Alarm
  584.     --------------------------
  585.     This enables/disables the fantastic sound  and screen flash that  warns
  586.     you when a virus has been detected on disk or in memory. Default is on.
  587.  
  588.     4. Install Faked SnoopDos
  589.     ------------------------- 
  590.     This installs/removes a task called SnoopDos (only if the real SnoopDos
  591.     isn't installed) for protection  against PowerPacker 3.2 trojan  horse.
  592.     Fully compatible  to the  real SnoopDos,  the option  doesn't need  any
  593.     processing time since the task is  running at a low priority and  waits
  594.     for a message that never arrives. Default: off.
  595.  
  596.     5. Check Resident Vectors
  597.     -------------------------
  598.     This tells VirusZ whether to check the resident vectors during  startup
  599.     and while running  or not.  Useful if  VirusZ keeps  on reporting  your
  600.     recoverable RAM-disk or harddisk-device  after every reset. Default  is
  601.     off.
  602.  
  603.     6. Report Custom Bootblocks
  604.     ---------------------------
  605.     This will, if enabled, cause  VirusZ to report known custom  bootblocks
  606.     while checking  your  disks. Useful  if  you  want to  find  a  certain
  607.     bootblock and you simply can't remember where it was. Default is off.
  608.  
  609.     7. Check Memory For Viruses
  610.     ---------------------------
  611.     By disabling this  item, you can  tell VirusZ not  to check memory  for
  612.     viruses regularly. This does not  disable the memory check on  startup,
  613.     because it's  still the  main task  of  a virus  checker to  check  for
  614.     viruses :-) Default is on.
  615.  
  616.     8. Detect Disk Changes
  617.     ----------------------
  618.     Toggles the automatic bootblock and disk-validator check on/off. Useful
  619.     if you are working a  whole day with only  two disks that already  have
  620.     been checked and you don't want  to wait until VirusZ has checked  them
  621.     every time you insert them. Default is on.
  622.  
  623.     9. Check Hunks On Startup
  624.     -------------------------
  625.     If you intend to crunch VirusZ with your preferred executable cruncher,
  626.     you'll soon find that VirusZ complains about a modified hunk structure.
  627.     To prevent this complaint, toggle this item off. Default is on.
  628.  
  629.     10. Requesters Follow Mouse
  630.     ---------------------------
  631.     This item offers you the possibility to select what type of  requesters
  632.     should be used for  decisions. If enabled,  the requesters will  appear
  633.     with the  negative response  under the  mouse, if  disabled, they  will
  634.     appear at the top left edge of the screen.
  635.  
  636.     11. Check Drives On Startup
  637.     ---------------------------
  638.     This has been added to prevent  VirusZ from checking all bootblocks  on
  639.     startup. This is especially useful if you have lots of HD partitions or
  640.     if VirusZ has problems with your HD. Default is on.
  641.  
  642.     12. Load Brain On Startup
  643.     -------------------------
  644.     If this item is enabled, VirusZ  tries to load the brainfile  specified
  645.     in the prefs (see below) on startup. Default is off.
  646.  
  647.     13. 'Are You Sure?' Before Exit
  648.     -------------------------------
  649.     This item toggles the verify request that appears when you either close
  650.     the VirusZ window or select Quit on/off. Default is on.
  651.  
  652.     14. Memory Check Repeat Delay
  653.     -----------------------------
  654.     Click on the Get gadget and a request appears. Here you may change  the
  655.     delay between two memory checks. Any value between 2 and 120 seconds is
  656.     valid, others will be rejected. Default is 10 seconds.
  657.  
  658.     15. Window Y-Sizes
  659.     ------------------
  660.     There are three items labeled '... Y-Size'. You can enter the amount of
  661.     text lines that should be  displayed in the respective windows.  Useful
  662.     on lace screens (slow scrolling) or if you don't want VirusZ to use the
  663.     whole screen for the display. Enter a value that is too big to set  the
  664.     windows to their full sizes. Use the Get gadgets to enter new values.
  665.     Defaults to 199.
  666.  
  667.     16. Bootblock Brainfile
  668.     -----------------------
  669.     Enter the full path  and filename of the  default brainfile here.  This
  670.     name is used by Load Brain and on startup if the respecting prefs  item
  671.     is enabled. Default is 'S:VirusZ.brain'.
  672.  
  673.     17. Check Crunched Files
  674.     ------------------------
  675.     This enables/disables the outstanding mega-feature of decrunching files
  676.     for virus checking. Note that you need 'decrunch.library' in your  libs
  677.     drawer if you intend to use this. Default is off.
  678.  
  679.     18. Skip Subdirectories
  680.     -----------------------
  681.     Tells the file checker  not to check subdirs.  Useful for checking  the
  682.     root directory of a harddisk :-) Default is off.
  683.  
  684.     19. Handle Viruses Automatically
  685.     --------------------------------
  686.     If this  option is  set, you  will not  see any  requesters asking  you
  687.     whether to repair an  infected file or not,  VirusZ will always try  to
  688.     remove viruses at once.  You should enable the  file report if you  use
  689.     this feature so you  can see what  happened while checking  afterwards.
  690.     Default is off.
  691.  
  692.     20. Create File Report
  693.     ----------------------
  694.     If enabled, VirusZ  captures all  text output  during file  check to  a
  695.     buffer. You can  save this  buffer after  the file  check is  finished.
  696.     Default is off.
  697.  
  698.  
  699.                                  SPECIAL NOTES
  700.                                  -------------
  701.  
  702.     1. New Viruses And Packers
  703.     --------------------------
  704.     Although VirusZ recognizes lots of viruses both in memory and on  disk,
  705.     this is  NOT  enough  until  also the  very  last  virus  is  included.
  706.     If you ever get a new virus, do not delete it before sending me a copy.
  707.     Don't forget: I can  only help you in  your fight against these  little
  708.     bastards if you support me with  all the necessary material. Killing  a
  709.     virus without knowing how it  works is impossible. Additionally to  new
  710.     viruses I'm  always  searching  for  new  crunchers  for  inclusion  in
  711.     'decrunch.library'.
  712.  
  713.     2. Bugs
  714.     -------
  715.     VirusZ has been  tested on Kick  1.3, OS  2.0 and OS  2.1 (Locale)  and
  716.     worked just fine. If you nevertheless find a bug, please don't wait for
  717.     better days, but send me a detailed description (if possible) including
  718.     your system's configuration and when and  how the bug appears. You  can
  719.     find some information about your  hardware configuration in the  vector
  720.     check. If VirusZ crashes in connection with other software, I would  be
  721.     glad if you send me a copy  of these programs (if the copyright  allows
  722.     it). Please  DO NOT  report things  that  I can't  repeat on  my  Amiga
  723.     without a detailed description of the circumstances.
  724.  
  725.     3. Enforcer Hits
  726.     ----------------
  727.     This program is made for virus killing. For this reason it has to check
  728.     all those memory locations used by viruses, amongst them the interrupts
  729.     table of the CPU. This certainly causes enforcer hits, but it obviously
  730.     is better to find the virus than not to have an enforcer hit, isn't it?
  731.     By the way, all hits are completely harmless.
  732.  
  733.     4. Known Problems
  734.     -----------------
  735.     VirusZ as a program works fine with Kickstart 33.166 (old 1.2), but the
  736.     memory check  routines  will  sometimes restore  wrong  pointers  while
  737.     removing viruses. As this  Kickstart was only  shipped with A1000,  and
  738.     most of the A1000 users have  Kick 1.3  or at least  Kick 1.2  (33.180)
  739.     which work fine, I don't see this as a great problem.
  740.  
  741.  
  742.                                   APPENDIXES
  743.                                   ----------
  744.  
  745.     1. Viruses In Memory
  746.     --------------------
  747.     All viruses mentioned in the 'Brain.doc' will be removed properly  from
  748.     memory (as far as  they install themselves in  memory). But not all  of
  749.     them  will  be  recognized  by  name.  This  is  because  some   clones
  750.     (especially SCA clones) can  be detected and killed  all the same  way.
  751.     Including a routine to get their real names as an addition would  cause
  752.     the memory checking routines  to get more than  twice as large as  they
  753.     are now. And that's not worth it.
  754.  
  755.     2. Utilities In Memory
  756.     ----------------------
  757.     Since VirusZ only kills what it knows in memory, it's not necessary  to
  758.     add all the resident utilities like RAD:, VD0:, ZKick etc. If you  ever
  759.     have problems with these (it's not very likely that VirusZ thinks these
  760.     might be viruses), let me know and I'll fix it.
  761.  
  762.     3. Special Thanks
  763.     -----------------
  764.     There are several people I wish to thank for their VirusZ support:
  765.  
  766.     Ralf Thanner                    what more should I say??
  767.     Control / Alcatraz              nice logo and other support
  768.     Axel Folley                     moral and financial support :-)
  769.     Steve / Silicon Designs 3003    always some new viruses and packers
  770.     Flake / D-Tect                  nice letters and viruses
  771.     Holger Wessling                 always some new ideas
  772.     Terminator / Destiny UK         bootblocks and long letters
  773.     Martin Odaischi                 always some new viruses
  774.     Heinz Lindner                   resident tools and new Kickstarts
  775.     Markus Stiebeling               several bug reports and hints
  776.     Rüdiger Prang                   nice patches 
  777.  
  778.     and several other supporters that have contacted me in the past
  779.     and of course all users who already paid their shareware fee.
  780.  
  781.     4. The End
  782.     ----------
  783.     That's all folks, wish you lots of successful anti-virus sessions with
  784.     VirusZ, keep smiley'ing and have fun...
  785.  
  786.     Georg :-)) 
  787.  
  788.     5. Some Kind Of Parody
  789.     ----------------------
  790.     Control's logo is much better, that's why it is at the top and this  is
  791.     at the bottom. But as I got this one for the last release, I wanted  to
  792.     include it anyway...
  793.  
  794.             ___             __
  795.   ___      /. /         __ |._|______________    » ThE BeSt MoNeY CaN BuY «
  796.   \. \    // /  ______ |. |||\___________ . /   
  797.    \\ \  // /_>|.  _. \|| ||| |/.  _____// /  · KeWl CoDeR, KeWl RoUtInEs
  798.     \\ \// /__ || |_>> >| ||| <<  <__  // /     · o-5 YeArS ViRuZeZ
  799.      \\ ' /|. |||  .  /|| ||| |\__.  \// /        · RuNnInG oN 68o7o/99MHz
  800.       \\ / || ||| |\\ \|` `'__|___>> // / 3.oo      · NiCe ShArEwArE FeEs
  801.        \/  |__||| | \\ \\___\_______// /__________    · AlWaYs LaTeSt BrAiN
  802.            ThE |__|  \\ \ UlTiMaTe /______________\     · AuToDeCrUnCh FiLeS
  803.                       \__\           ViRuS KiLLeR
  804.  
  805.         !¡! WhErE WoNdErS CoMe TrUe AnD ThE ViRuSeS CoMmIt SuIcIdE !¡!
  806.                                                                           !TML!
  807.